home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Libris Britannia 4
/
science library(b).zip
/
science library(b)
/
PROGRAMM
/
DB_CLIPP
/
2909.ZIP
/
F6DOC.EXE
/
FLAG6.DOC
Wrap
Text File
|
1991-03-01
|
107KB
|
3,283 lines
FLAG Db DoubleCheck
Version 6
Intelligent Database Duplicate Checking System
Copyright 1988-1991 Matthew G. Maier.
ALL RIGHTS RESERVED.
Matthew G. Maier
19019 Capehart Drive
Gaithersburg, MD 20879
(301) 869-1879
CIS 76370,743 Genie M.MAIER
_______
____|__ | (tm)
--| | |-------------------
| ____|__ | Association of
| | |_| Shareware
|__| o | Professionals
-----| | |---------------------
|___|___| MEMBER
Trademarks and Acknowledgements
FLAG Db DoubleCheck is a copyright of Matthew G. Maier.
Clipper is a registered trademark of Nantucket Corporation.
FoxBASE+/FoxPro are registered trademarks of Fox Software.
dBASE III/III+/IV are registered trademarks of Ashton-Tate.
Quicksilver is a registered trademark of WordTech Systems Inc.
NetWare is a registered trademark of Novell.
IBM is a registered trademark of International Business Machines.
I would like to express my thanks to all those involved in making
FLAG what it is, you all know who you are. Thank you.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
i
FLAG Db DoubleCheck Table of Contents
_________________________________________________________________
Table of Contents
Trademarks and Acknowledgements . . . . . . . . . . . . . . . i
Table of Contents . . . . . . . . . . . . . . . . . . . . . ii
License Agreement . . . . . . . . . . . . . . . . . . . . . . v
Introduction . . . . . . . . . . . . . . . . . . . . . . . . 1
Manual Overview . . . . . . . . . . . . . . . . . . . . . . . 3
System Requirements . . . . . . . . . . . . . . . . . . . . . 4
Computer . . . . . . . . . . . . . . . . . . . . . . . . 4
Memory . . . . . . . . . . . . . . . . . . . . . . . . . 4
Disk . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Files . . . . . . . . . . . . . . . . . . . . . . . . . 4
Networks . . . . . . . . . . . . . . . . . . . . . . . . 4
Shareware . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Registration . . . . . . . . . . . . . . . . . . . . . . . . 5
Distribution . . . . . . . . . . . . . . . . . . . . . . . . 6
Getting Started . . . . . . . . . . . . . . . . . . . . . . . 7
Installation . . . . . . . . . . . . . . . . . . . . . . 7
Shareware version . . . . . . . . . . . . . . . . . 7
Registered version . . . . . . . . . . . . . . . . 7
Configuration . . . . . . . . . . . . . . . . . . . . . 7
DOS Environment Variables . . . . . . . . . . . . . 7
F6RAM . . . . . . . . . . . . . . . . . . . . 7
Syntax . . . . . . . . . . . . . . . . . . . . 8
F6OVM . . . . . . . . . . . . . . . . . . . . 8
Syntax . . . . . . . . . . . . . . . . . . . . 8
F6FLT . . . . . . . . . . . . . . . . . . . . 8
Syntax . . . . . . . . . . . . . . . . . . . . 9
F6FLT Functions (partial list) . . . . . . . . 9
F6FLT Boolean operators . . . . . . . . . . 10
Starting FLAG . . . . . . . . . . . . . . . . . . . . 12
Main Menu . . . . . . . . . . . . . . . . . . . . . . . . . 13
Description . . . . . . . . . . . . . . . . . . . . . 13
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
ii
FLAG Db DoubleCheck Table of Contents
_________________________________________________________________
Navigation . . . . . . . . . . . . . . . . . . . . . . 13
Main Menu option descriptions . . . . . . . . . . . . 13
Select Data File . . . . . . . . . . . . . . . . 13
Field Setup . . . . . . . . . . . . . . . . . . . 14
Options Setup . . . . . . . . . . . . . . . . . . 14
Check File . . . . . . . . . . . . . . . . . . . 14
Utils. . . . . . . . . . . . . . . . . . . . . . 14
Quit . . . . . . . . . . . . . . . . . . . . . . 14
Select Data File . . . . . . . . . . . . . . . . . . . . . 15
Description . . . . . . . . . . . . . . . . . . . . . 15
Navigation . . . . . . . . . . . . . . . . . . . . . . 15
Select Data File Menu option descriptions . . . . . . 15
Pick a file . . . . . . . . . . . . . . . . . . . 15
Type in name . . . . . . . . . . . . . . . . . . 16
New File Spec . . . . . . . . . . . . . . . . . . 16
Drive / Directory . . . . . . . . . . . . . . . . 16
Field Setup . . . . . . . . . . . . . . . . . . . . . . . . 18
Description . . . . . . . . . . . . . . . . . . . . . 18
Index Key Length . . . . . . . . . . . . . . . . 18
Index Expression Length . . . . . . . . . . . . . 18
Navigation . . . . . . . . . . . . . . . . . . . . . . 18
Instructions . . . . . . . . . . . . . . . . . . . . . 18
Deselecting fields . . . . . . . . . . . . . . . 19
Accepting your choices . . . . . . . . . . . . . 19
Options Setup . . . . . . . . . . . . . . . . . . . . . . . 20
Description . . . . . . . . . . . . . . . . . . . . . 20
Navigation . . . . . . . . . . . . . . . . . . . . . . 20
Instructions . . . . . . . . . . . . . . . . . . . . . 20
Option Descriptions . . . . . . . . . . . . . . . . . 21
Ignore Case . . . . . . . . . . . . . . . . . . . 22
Ignore Spaces . . . . . . . . . . . . . . . . . . 23
Ignore Punctuation Characters . . . . . . . . . . 24
Mark EXACT Duplicates . . . . . . . . . . . . . . 25
Verify Exact Marking . . . . . . . . . . . . . . 26
Check Type . . . . . . . . . . . . . . . . . . . 27
Duplicate Identification Levels . . . . . . . . . 28
End of Check Warning . . . . . . . . . . . . . . 29
Report to File . . . . . . . . . . . . . . . . . 30
Print report to printer . . . . . . . . . . . . . 31
Print Statistics to printer . . . . . . . . . . . 32
Print with Graphics characters . . . . . . . . . 33
Duplicate Identification Report Inclusion . . . . 34
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
iii
FLAG Db DoubleCheck Table of Contents
_________________________________________________________________
Printer Parameters . . . . . . . . . . . . . . . 35
APPENDIX A -- Hints . . . . . . . . . . . . . . . . . . . . 36
Picking Data Files . . . . . . . . . . . . . . . . . . 36
Picking fields . . . . . . . . . . . . . . . . . . . . 36
Number of checks to do . . . . . . . . . . . . . . . . 37
APPENDIX B -- History . . . . . . . . . . . . . . . . . . . 38
Revision History by Version . . . . . . . . . . . . . 38
Version 6 . . . . . . . . . . . . . . . . . . . . 38
R.3 . . . . . . . . . . . . . . . . . . . . 38
R.1.14.8 . . . . . . . . . . . . . . . . . . 38
R.1.14.7 . . . . . . . . . . . . . . . . . . 38
R.1.14.6 . . . . . . . . . . . . . . . . . . 38
R.1.14.0 . . . . . . . . . . . . . . . . . . 39
R.1.10.0 . . . . . . . . . . . . . . . . . . 39
R.1.9.2 . . . . . . . . . . . . . . . . . . 39
R.1.8.1 . . . . . . . . . . . . . . . . . . 39
R.1.0.1 . . . . . . . . . . . . . . . . . . 40
R.1.0.0 . . . . . . . . . . . . . . . . . . 40
Version 5 . . . . . . . . . . . . . . . . . . . . 41
R.0.3.0 . . . . . . . . . . . . . . . . . . 41
R.0.2.8 . . . . . . . . . . . . . . . . . . 41
R.0.2.0 . . . . . . . . . . . . . . . . . . 41
R.0.1.3 . . . . . . . . . . . . . . . . . . 41
R.0.1.0 . . . . . . . . . . . . . . . . . . 41
APPENDIX C . . . . . . . . . . . . . . . . . . . . . . . . 42
Technical Support / Author . . . . . . . . . . . . . . 42
US Mail . . . . . . . . . . . . . . . . . . . . . 42
Telephone . . . . . . . . . . . . . . . . . . . . 42
Hours - Weekday . . . . . . . . . . . . . . 42
Hours - Weekend . . . . . . . . . . . . . . 42
Email . . . . . . . . . . . . . . . . . . . . . . 42
APPENDIX E -- ASP - Ombudsman . . . . . . . . . . . . . . . 43
APPENDIX F -- Registration Information . . . . . . . . . . 44
Pricing, Site License, and discount rate chart . . . . 45
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
iv
FLAG Db DoubleCheck License Agreement
_________________________________________________________________
FLAG Db DoubleCheck License Agreement
Matthew G. Maier provides this program and licenses it for use.
You, the licensee, assume responsibility for the selection of the
program to achieve your intended results, and for the installa-
tion, use, and results obtained from the program.
This is a single-user license. The license may be assigned to an
individual person or to an individual computer. If assigned to
an individual computer, the Program must be used only on that
computer. If assigned to an individual person, only that person
may use the Program, but he or she may use it on any computer
that will run the Program.
UNDER THIS LICENSE YOU MAY:
o Use the program on a single computer at any given time.
o Copy the program onto two other disks for backup purposes.
YOU MAY NOT USE, COPY, MODIFY, OR TRANSFER THE PROGRAM OR ANY
COPY, MODIFICATION, OR PORTION, IN WHOLE OR IN PART, EXCEPT AS
EXPRESSLY PROVIDED FOR IN THIS LICENSE. IF YOU TRANSFER POSSES-
SION OF ANY COPY, MODIFICATION, OR MERGED PORTION OF THE PROGRAM
TO ANOTHER PARTY, YOU MUST DESTROY ALL COPIES REMAINING IN YOUR
POSSESSION.
LIMITED WARRANTY: Matthew G.Maier warrants that the Program will
perform substantially as described in the accompanying User's
Manual on MS-DOS and PC-DOS systems. The Program is provided
without any other warranty of any kind, either express or im-
plied, including but not limited to the implied warranties of
merchantablitity or fitness for a particular purpose. The entire
risk as to the quality and performance of the Program is yours.
Matthew G. Maier does not warrant that the function contained in
the program will meet your requirements or that the operation of
the program will be uninterrupted or error free. Matthew G.
Maier warrants the media on which the Program is furnished to be
free of defects in materials and workmanship under normal use for
a period of sixty days from the date of delivery.
If you believe that the Program does not meet the conditions of
the above Limited Warranty, you must notify Matthew G. Maier
within sixty days of the date of purchase.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
v
FLAG Db DoubleCheck License Agreement
_________________________________________________________________
LIMITATION OF REMEDIES: Matthew G. Maier's entire liability and
your only remedy is:
1. The replacement of any media not meeting Matthew G. Maier's
"Limited Warranty" which is returned to Matthew G. Maier with
evidence of date of purchase.
2. If notified within the warranty period of significant errors
in the Program that fail to meet the conditions of the above
Limited Warranty, Matthew G. Maier will at his option (a) correct
such errors or (b) authorize a refund of your purchase price upon
return of all Program materials to Matthew G. Maier.
IN NO EVENT WILL MATTHEW G. MAIER BE LIABLE TO YOU FOR ANY
DAMAGES, INCLUDING ANY LOST PROFITS, LOST SAVINGS OR OTHER
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE SUCH PROGRAM EVEN IF MATTHEW G. MAIER OR AN
AUTHORIZED DEALER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
You acknowledge that you have read this Agreement, understand it
and agree to be bound by its terms and conditions. You further
agree that it is the complete and exclusive statement of the
Agreement between us which supersedes any proposal or prior
agreement, oral or written, and any other prior communications
between us relating to the subject matter of this Agreement.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
vi
FLAG Db DoubleCheck Introduction
_________________________________________________________________
Introduction
Welcome to FLAG Db Double Check!
FLAG Db DoubleCheck is designed to check dBASE III+, and compati-
ble, .DBF data files for duplicate records. Optionally removing,
marking for deletion, any Exact duplicates it encounters.
Following in this introduction is an overview of the manual and
program. The manual describes the use of FLAG Db DoubleCheck
(hereto referred to as "FLAG") in eliminating your data base
system of duplicate records. Removal of duplicate records from
your data base can help you to cut costs on your mailings,
improve the integrity of your data allowing for more accurate
reports and summary information.
FLAG's original conception was one born of need. I found myself
repeatedly confronted with the task of checking .DBF files, of
varying structures, for duplicates. Rather than reinvent the
wheel each time by writing a separate program to check each file
I wrote one program that would check any file regardless of
structure.
The most efficient means of duplicate prevention is to detect
them when they are being entered. The only problem is that this
is not always possible or easy, especially where partial dupli-
cation is concerned. Because FLAG is a separate program it can
afford to take its time and be thorough at the cost of time,
where it may not be prudent to do so from within an application.
Following is a short list of some of FLAG's features:
o Check dBASE III/III+, Clipper, QuickSilver, FoxBASE+, and
other close compatible, data files.
o Check any field(s) in the table, character, numeric, date,
and/or logical (structure independence).
o Set position in field to begin checking and length of check.
You can tell FLAG where within a field to begin checking
and, starting from that point, how much of the field to
check.
o Ignore case of characters, white space characters, and
punctuation characters within fields.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
1
FLAG Db DoubleCheck Introduction
_________________________________________________________________
o Identification of three different types of duplicates:
Exact, Probable, and Possible
o Two checking methods. Quick for only exact duplicates and
Full for a thorough check.
o Optional marking of exact duplicates for deletion, with
Stop-n-Ask verification if desired.
o User defined reports -- you designate the fields and dupli-
cate types to be included in the report. You define the
report parameters, margins and initialize and reset printer
control codes.
o Generate report to printer and/or file.
o Separate check statistics report so the entire report need
not be generated just for the statistics of a check.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
2
FLAG Db DoubleCheck Introduction
_________________________________________________________________
Manual Overview:
System Requirements -
A run down of system requirements for the use of FLAG.
Shareware -
A short description of Shareware, what it is, and what
it means.
Registration -
Information on registration of the Shareware version of
FLAG Db DoubleCheck. Outline of benefits of registra-
tion.
Distribution -
Restrictions concerning distribution of the Shareware
version of FLAG Db DoubleCheck.
Getting Started -
How to make a backup copy of FLAG. How to install FLAG
on your system from either the registered or shareware
packages. First time users should read this section.
Main Menu -
Explanation of FLAG's Main Menu options.
Select Data File -
Instructions for selecting a file to check, changing
the configured selection file specification, and chang-
ing the current drive/directory.
Field Setup -
This section details the section of FLAG that sets up
the fields to be checked.
Option Setup -
How to setup FLAG's various check and reporting op-
tions.
Customizing FLAG
At this time the only 'customization' that FLAG offers
is the ability to change the colors to something more
to your liking. The instructions for this are in the
on-line help which can be viewed while you are in the
Utils. Menu by pressing the [F1] key.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
3
FLAG Db DoubleCheck Introduction
_________________________________________________________________
System Requirements
Computer : An IBM PC/AT/386 or other close compatible.
Memory : A minimum of 340K of RAM, free at program start
up, is required. For best performance it is rec-
ommended that FLAG have as much memory as possi-
ble, 470K+ is good. By default FLAG will use up
to 640K of EXPANDED memory if it is available. If
you experience strange behavior use FLAG's envi-
ronment variable to disable the use of expanded
memory.
Disk : A hard disk is suggested. You will need suffi-
cient space on your disk for FLAG to create its
temporary file(s).
Files : The file to be checked must be compatible with the
dBASE III+ .DBF data file format. (This DOES NOT
include certain dBASE IV or FoxPro data files).
FLAG cannot check dBASE IV floating point fields
and dBASE IV or FoxPro files with memo fields.
With dBASE IV you have the option of copying the
file with the DB3MEMO modifier to create a dBASE
III+ compatible .DBF/.DBT file set.
The file should not be encrypted or in any other
way protected or altered.
Networks : FLAG is NOT a multi-user application by its very
nature. FLAG is however network aware. FLAG
detects the presence of a network and will take
appropriate file locking action if it detects a
network. The only network OS that FLAG has been
tested on, by me, is Novell's NetWare.
NOTE: If you are running on a network it is your
responsibility to ensure that you have Create and
Delete rights in the directory where you will be
working. You will also need to be able to use the
data file to be checked in NON-shareable (LOCKED-
/EXCLUSIVE) mode.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
4
FLAG Db DoubleCheck Introduction
_________________________________________________________________
Shareware
FLAG Db DoubleCheck is copyrighted under U.S. and international
copyright law by Matthew G. Maier. Defraud of the codes and
terms of these copyright law(s) will result in criminal prosecu-
tion. FLAG Db DoubleCheck IS NOT and NEVER has been FREEWARE or
PUBLIC DOMAIN. If you use FLAG Db DoubleCheck beyond the trail
period you are required to purchase it just as with any other
commercial software package.
Shareware does not mean that the software is free. The authors
are exploring a new avenue of distribution where you may try the
software, for a reasonable period, before you purchase it.
Commercial distribution of software is very expensive. Everyone
does not have the capital required to undertake such a risky
venture. No matter how good any particular product may be
without the initial capital required to launch a commercial
venture it would not succeed. This is why the shareware concept
is used by so many smaller companies and single author products.
FLAG Db DoubleCheck may NOT be reproduced, sold, copied, disas-
sembled, reverse engineered, incorporated into, or bundled with,
any other package(s), or application(s), or in any other way
modified without the express WRITTEN consent of the author.
Registration
When you register your shareware version of FLAG Db DoubleCheck
you will be sent the latest version of FLAG Db DoubleCheck, (all
fixes are not uploaded to a BBS). You will be entitled to one
FREE upgrade and will receive technical support. The UNREGIS-
TERED SHAREWARE notice will be removed from your registered
version and will be serialized with your registration ID and
name. At this time, printed documentation is not available, this
may become a future option.
Registered users have priority in all communications with the
developer: technical support, upgrades, enhancements they would
like, etc. If you find FLAG Db DoubleCheck useful, would like to
see enhancements made to it, and want to support the Shareware
concept, then register your version. Please, register all
Shareware you use and find useful.
Please refer to Registration Information (appendix f, pg. 44) for
more information on pricing and ordering.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
5
FLAG Db DoubleCheck Introduction
_________________________________________________________________
Distribution
You may upload the FLAG Db DoubleCheck SHAREWARE version, in its
unmodified archival form, provided all accompanying documentation
and data files are included in the archive(s).
Commercial distributors and vendors must obtain a WRITTEN distri-
bution license from the author before they may distribute FLAG Db
DoubleCheck in any form.
If you are a member of the ASP then you, as an ASP approved
vendor, may include FLAG in your collection without any prior
consent from the author. The only request I have is that you
send me a copy of your catalog in which FLAG is listed.
Non-profit Users Groups may distribute FLAG to their members and
may charge a fee not to exceed $7.00 (US) to cover materials,
handling, and processing.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
6
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
Getting Started
Installation:
The Shareware version:
The shareware version of FLAG Db DoubleCheck comes in an archived
format. Unarchive the files into the directory where you would
like to keep FLAG.
The Registered version:
The registered version of FLAG Db DoubleCheck comes on an IBM
360K 5.25" floppy diskette. Copy the FLAG_63.EXE file to the
directory where you wish to install FLAG and at the DOS prompt
type "FLAG_63" (without the quotes) to unarchive the files.
Configuration:
DOS Environment Variables
FLAG supports three DOS environment variables. Two tune perfor-
mance, memory usage, and the other is for setting filters. The
variables can be set in three ways: entered as SET var=val at
the DOS prompt, in a BATch file which then executes FLAG, or in
your AUTOEXEC.BAT file to be set at system bootup.
The first environment variable, F6RAM, controls FLAG's use of
RAM, both conventional (the lower 640K) and ExPanded memory (if
any). The second variable, F6OVM, controls FLAG's overlay
manager. The third, F6FLT, (Release 1.9.2 and onward), supports
the setting of a filter which FLAG will use in determining which
records to check. The general guidelines for the use of the FLAG
DOS Environment Variables are outlined below.
The F6RAM DOS Environment Variable:
This variable determines how much RAM FLAG will use for index
buffering. There are two parameters to this variable, R and E.
The R switch controls conventional memory (the main memory, where
you run your programs, generally the first 640K). The E switch
controls FLAG's use of ExPanded memory.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
7
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
Some exPanded memory managers and other programs using exPanded
memory while FLAG is running can cause problems. If you do not
have exPanded memory FLAG will ignore the E setting. The de-
faults and setting guidelines follow:
Syntax : SET FLAG6=[Rnnn;][Ennn;]
R 16-<available free memory>
E 0-640
Default Settings:
R 50
E 640
To use 128K of conventional RAM and 640K of exPanded memory
enter:
SET FLAG6=R128;
(remember the default for E is already 640K)
To use 25K of conventional memory and 0K of exPanded memory
enter:
SET FLAG6=R25;E0;
The F6OVM DOS Environment Variable:
This variable controls how much conventional, below 640K, memory
FLAG's overlay manager will attempt to use, as a maximum. If you
have a large amount of base memory free at program startup you
may consider using this variable to allow FLAG to keep more of
the program code in memory resulting in faster execution and less
disk reads to the FLAG6.OVL file.
Syntax : SET F6OVM=/OOnnn
nnn The maximum amount of memory you would like to
allow FLAG to use for its overlays.
The F6FLT DOS Environment Variable:
This is a nice feature to have and thanks go to John V. Parker
for suggesting (requesting) I provide this ability. F6FLT's
intended use is to use an expression to EXCLUDE certain records
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
8
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
that you know you do not want included in a check. The syntax
for F6FLT is:
Syntax : SET F6FLT=<expression>
For example, let's say you do not want to check any records that
have a blank address. (assuming you have a table with a field
called ADDRESS in it, naturally.) Include the following state-
ment in your AUTOEXEC.BAT, a batch file which calls FLAG, or type
it at the DOS prompt prior to running FLAG.
Example : SET F6FLT=EMPTY(ADDRESS)
FLAG will then examine records prior to checking them to deter-
mine if they meet this criteria. If the record does meet the
criteria (the expression returns true), the record is skipped and
the expression is evaluated on the next record. This loop will
continue until a record that DOES NOT match the expression set in
F6FLT is found or the end of the file is reached.
F6FLT will support most dBASE III+ expressions. The only con-
straint being that the expression must return a LOGICAL (boolean,
true or false). To illustrate another example:
SET F6FLT="1" $ address .or. empty(address)
The above would skip all records that contain a 1 in the address
or have an empty address.
F6FLT Functions (partial list):
empty(<field_name>)
Check for an empty field
substr(<field_name>,<start>[,<len>])
Substring of a field. <start> is required, <len> is
optional (the remainder of the field is assumed if
<len> is not used).
left(<field_name>,<len>) / right(<field_name>,<len>)
Extract left/right <len> characters from field.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
9
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
str(<field_name>[,len][,dec])
Convert numeric field to a character string. Both
<len>, length of number, and <dec>, number of decimal
places, are optional.
ctod(<"mm/dd/yy">)
Character string to date type variable. The string
"mm/dd/yy" will be converted to an Xbase date type
variable. (to be used in comparisons such as:
SET F6FLT=date_field >= ctod("01/01/91")
dtoc(<field_name>) and dtos(<field_name>)
Conversion of date type fields to character strings.
dtoc() returns string in format "mm/dd/yy". dtos()
returns string in format "ccyy/mm/dd".
trim(<field_name)> (ltrim()/rtrim())
String trimming functions. Trim leading/trailing
spaces from character type fields (or converted
fields).
len(<field_name>)
Determine length of a field.
at(<char(s)>,<field_name>)
Determine position, from start of field, of <char(s)>
within field.
rat(<chars(s),<field_name>)
Determine position, from right (end) of field, of
<chars(s)> within field.
There are many more functions available, please consult your
Xbase language reference for more information.
F6FLT Boolean operators:
<field_name> == <value> Equal to
<field_name> != <value> Not Equal to
<field_name> $ <value> Contains
<field_name> > <value> Greater than
<field_name> >= <value> Greater than or Equal to
<field_name> < <value> Less than
<field_name> <= <value> Less than or Equal to
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
10
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
.AND., .OR., and .NOT. are supported for the construction of
complex boolean logic expressions.
SET F6FLT=empty(address) .and. upper(name)$"JONES".or.
upper(name)$"JOHNSON".and.dob!=ctod("01/01/91")
The above example, the line is split due to space -- it should be
entered as one continuous string, will check each record for an
empty address field, and name containing JONES or JOHNSON, and a
date of birth (dob) which is not 01/01/91.
The next release of FLAG will support its own internal query
expression builder which will allow you to build a query expres-
sion to filter the records from within FLAG. This will also
offer relief 127 character limit that DOS imposes.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
11
FLAG Db DoubleCheck Getting Started
_________________________________________________________________
Starting FLAG:
To start FLAG type "FLAG6" and press [ENTER] at the DOS prompt.
When FLAG starts you will see the opening logo screen. If you
have an UNREGISTERED SHAREWARE version of FLAG you will see the
shareware notice and will be required to press the 'F5' function
key before further execution is possible.
After FLAG opens its data files and checks the previous configu-
ration the Main Menu will come up.
If the last file in the History file (FLAG6HIS.DBF) and the file
name in the configuration file do not match FLAG will inform you
in with a message. FLAG will also inform you of any other
ambiguities it finds when checking the configuration. When you
see on of these messages at start up you will have to reset the
file and fields portions of FLAG before proceeding with a check.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
12
FLAG Db DoubleCheck Main Menu
_________________________________________________________________
The Main Menu
Description:
FLAG's main menu is located on the first row of the screen, it
consists of six choices.
Select Data File
Field Setup
Options Setup
Check File
Utils.
Quit
In the center of the screen is the statistics box. This box
contains various pieces of information pertaining to FLAG's
current state. The first line is the name of the file currently
selected. The next lines are registration and copyright informa-
tion. The bottom portion of the box holds system specific
information. The currently logged drive and directory, amount of
free disk space, and the current date and time.
Navigation:
Highlight your selection with the cursor keys and press [ENTER]
to confirm your choice. Alternately, you can press the first
letter of your desired choice to make the selection. Select
'Quit' and press [ENTER], press 'Q', or press [ESC] to abort and
return to the operating system. Press [F1] for help at any time
that FLAG is waiting for input or a selection to be made to
receive context sensitive help.
Main Menu option descriptions:
Select Data File:
In this section you will be able to select a file to check; from
a list of the files in the current directory; type in a filename;
specify a new filespec to use in the pick window; type in the
name of a file to check; change directories; or change drives.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
13
FLAG Db DoubleCheck Main Menu
_________________________________________________________________
Field Setup:
This section is where you specify which fields to use in the
checking process. Where to start checking, and the number of
checks to preform on each of the selected fields. And which, if
any, fields to include in the report (and/or Stop-n-Ask box).
Options Setup:
Toggle FLAG's options for checking; set the duplication level(s);
set report parameters; etc.
Check File:
Start the check process on the currently selected file with the
current setup.
Utils.:
At this point in time the only 'Utility' that FLAG offers is
customization of colors. Select Utils. to change the colors FLAG
uses for various boxes and information.
Quit:
Leave FLAG and return to your normal operating environment (DOS).
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
14
FLAG Db DoubleCheck Select Data File
_________________________________________________________________
Main Menu Option Title: Select Data File
Description:
In the Select Data File Menu you will select a file to check,
there are four options in this section:
Pick a file
Type in name
New File Spec
Drive / Directory
Navigation:
Highlight your selection using the cursor control keys and press
[ENTER] to confirm your choice. Alternately, you can press the
first letter of your desired choice to make the selection. Press
[ESC] to abort. Press [F1] for context sensitive help at any
point where FLAG is awaiting input or while at a menu.
Select Data File Menu option descriptions:
Pick a file:
Display a list of files in the current directory, that match the
current filespec, and choose one to check. The display is orga-
nized by files first, followed by directories, and then drives.
You can move around all of your disks and directories while
selecting a file to check. (Changing drive/directory will not
change the actual logged drive/directory from where you started
FLAG. You will have to use the Drive / Directory option to
change the logged drive and/or directory.)
Highlight your selection with the cursor keys and press [ENTER]
to confirm your choice. Alternately, you can press the first
letter of your desired choice to make the selection. Press [ESC]
to abort.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
15
FLAG Db DoubleCheck Select Data File
_________________________________________________________________
Type in name:
Type the name of a file you would like to check. Any legal DOS
filename is acceptable. If the file is not in the current
directory then you must include the drive and directory designa-
tions. The file extension is optional. FLAG will assume an
extension of ".DBF" and append it to the end of any filename
given without an extension.
NOTE: If you would like to check a file that does not have an
extension you must include a period ('.') following the
file's name. So that FLAG will not automatically
append the default file extension, ".DBF", to the end
of the filename.
Type in filename and press [ENTER] to confirm. Press [ESC] to
abort or [F1] for help.
New File Spec
Change the current filespec in the configuration file. This file
specification is used in determining which files you see when you
select the 'Pick a file' option from the 'Select Data File' menu.
Type in any valid DOS filespec and press [ENTER] to confirm.
Press [ESC] to abort or [F1] for help.
Drive / Directory
Change the current Drive/Directory by choosing from a list of the
Drives/Directories available. This option is used to change the
drive/directory to where you would like FLAG to place its scratch
files, index, report, etc. Think of this option as changing the
default drive/directory, as the Pick a File option will return
you to the drive and directory from where you invoked FLAG after
you select a file or abort.
Highlight the directory you wish to change to and press [ENTER]
to confirm. Press [ESC] when you are finished. Press [F1] for
help.
If the currently highlighted option is a Drive FLAG will change
to that drive and present you with another list of Drives and
Directories to choose from. If the option is a Directory FLAG
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
16
FLAG Db DoubleCheck Select Data File
_________________________________________________________________
will move to that directory and present you with another list of
Drives and Directories to choose from. Pressing [ESC] will leave
FLAG in the current Drive/Directory that you selected. Remember
that you must press [ENTER] on the Drive/Directory before press-
ing [ESC]. You can confirm that you are where you would like to
be by looking at the top line of the pick box, displayed there is
the current drive directory where FLAG is.
Once you have made a valid file selection FLAG will immediately
return to the Main Menu. Prior to returning FLAG will verify
that the file is dBASE III+ compatible and copy the field infor-
mation into one of its internal files which you will use in Field
Setup.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
17
FLAG Db DoubleCheck Field Setup
_________________________________________________________________
Main Menu Option title: Field Setup
Description:
In the Field Setup section you may mark all of the fields you
wish to use in the check process. Set your starting and check
lengths and, optionally, mark fields to be included in your
report. You can mark from one to all of the fields in the table.
NOTE: All fields of type Memo will NOT be presented for
selection. In addition there are a few conditions
pertaining to the amount of fields you can check.
The overall length of the combined field lengths, the Index Key
Length, should be less than (or at least close to) 200 characters
(but MUST be less than 250).
The length of the index expression, Index Expression Length,
cannot exceed 256 characters. This will only become a problem if
you want to check lots and lots of fields or you are checking
lots of fields of type other than character.
A running tally of this information, the Index Key Length and the
Index Expression Length, is presented on the top line of the
screen. Keep an eye on the numbers displayed here and keep in
mind that the higher these numbers are the longer it will take
FLAG to build its index.
Navigation:
Highlight your selection with the cursor keys and press the
[SPACE BAR] to mark the field for checking. Press [ALT-P] to
mark a field for printing. Press [ENTER] to edit the starting
position, check length, and print options. Press [F10] to
confirm ALL of your choices. Press [ESC] to abort. Press [F1]
for help. If you press [ENTER] on a field that is not selected
it will automatically be selected for you (the reverse however is
not the case, you will have to press the [SPACE BAR] to explicit-
ly deselect a selected field).
Instructions:
Whenever you mark a field FLAG will place a check mark in the
'Check Field?' column in the selection window, so you know that
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
18
FLAG Db DoubleCheck Field Setup
_________________________________________________________________
field is selected. In addition, FLAG will also assign a default
starting position and check length.
The last line of the screen is a short, one line, help and
message line.
Above the last line is the statistics box. Contained within this
box are statistics on how many fields are available to be
checked, how many are selected, fields selected to be included in
the report, report width, total number of checks, and the total
number of records to be checked in the selected file.
Deselecting fields:
Position the highlight over a selected field name and press
[SPACE BAR]. (Remember, pressing [ENTER] will only select a
deselected field and will not deselect a selected field.) The
check mark will be removed from the 'Check Field?' column. Don't
worry about the settings in the check start and check length
columns, they will be ignored by FLAG if the field is not marked.
The Print field column however will always be used regardless of
whether the field is selected to be checked or not. This will be
used to determine what fields to display in the Verify Mark box
if that option is turned on and what fields to include in any
reports generated.
Accepting your choices:
After you have selected all of the fields that you wish to check
and pressed [F10] to confirm your selections. FLAG will automati-
cally make an estimate of how much disk space is needed, to build
the required index file, and compare that to what is available.
If there is not enough disk space you will be notified and
returned to the main menu.
What you will need to do now is either quit or select
'Data File Selection' from the main menu. When you are
in the 'Data File Selection' section select the 'Drive
/ Directory' option. After you have changed to a
different drive, select the 'Field Selection' option
again, verify that the fields you want to check are
marked and then press [F10].
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
19
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Main Menu Option Title: Options Setup
Description:
This section allows you to customize the check process to suit
your needs. By means of a series of toggles, prompts, and multi-
ple choice options you can set options that will affect the check
process, report generation, and various other parameters.
Navigation:
Highlight your selection with the cursor keys and press [ENTER]
to set option. Press [F10] to confirm ALL of your selections,
[ESC] to abort, or [F1] for help.
Instructions:
In most cases all you will need to do is highlight the option and
press [ENTER] and indicate whether you want this option or not.
There are several other options that are NOT toggles, for these
you will need to input information or make selections.
Option Descriptions Summary:
Ignore Case:
Ignore case of characters while checking.
Ignore Spaces:
Ignore white space characters while checking.
Ignore Punctuation Characters:
Ignore punctuation characters while checking.
Mark EXACT Duplicates:
Mark Exact duplicates encountered for later deletion.
Verify EXACT Marking:
Stop-n-Ask verification of Exact duplicate marking.
Duplicate Identification Levels:
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
20
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Set the percentage of duplication that identifies each of
the different types (Exact, Probable, and Possible).
Duplicate Level Report Inclusion:
Set which duplicate levels are to be included in reports.
Set Report Parameters:
Set various parameters dealing with the generation of re-
ports: Send report to the printer and/or file, Report
Margins, Printer Initialization and Reset codes.
Option Descriptions (detailed):
On the following pages are detailed descriptions of all options
available.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
21
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Ignore Case:
Yes : The case, upper or lower, of a character IS ignored
No : The case of a character IS NOT ignored
If option set to Yes, all letters will be treated equally.
Meaning, as one case, not as mixed case where an upper case 'J'
is not the same as a lower case 'j'. This is good for names,
addresses, etc. that do not require case sensitivity for unique-
ness.
i.e.
data in the table looks like:
field1 field2
record1 J JOnes 1122 ANy St
record2 J Jones 1122 Any St
With Option:
record1 J JONES 1122 ANY ST
record2 J JONES 1122 ANY ST
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
22
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Ignore Spaces:
Yes : Matching spaces ARE NOT counted
No : Matching spaces ARE counted
Normally FLAG will count spaces as matches if they occur, in the
same place, in the same field, in both records. You can override
this with this option. Telling FLAG that spaces are not important
and not to count them.
FLAG will then extract all of the spaces from the field(s) as
they are to be checked. FLAG will try to extract a valid, no
spaces, string that is equal to the number of checks specified.
The extraction will continue until either the correct number of
characters are found, or the end of the field is reached. If
FLAG searched until the end of the field, the remaining unfilled
character places will be replaced with a special character. When
FLAG reaches this special character during the check of the field
it will terminate that particular check and go on to the next.
i.e. (start checking at character 1, with a length of 5)
data in table looks like FLAG sees this
field1 field2 field1 field2
record1 J Jones 1122Any St J Jon 1122A
record2 JJones 1122 Any St JJone 1122
||||| |||||
With Option: 12345 12345
||||| |||||
record1 J Jones 1122Any St JJone 1122A
record2 JJones 1122 Any St JJone 1122A
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
23
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Ignore Punctuation Characters:
Yes : Punctuation characters IS NOT counted
No : Punctuation characters ARE counted
FLAG normally counts punctuation characters as unique. Punctua-
tion is one place where mistakes are most common. This along
with different abbreviation practices can lead to data that will
not show up as being even a close match yet it is. This option
informs FLAG to extract all punctuation characters in much the
same manner as with the Spaces (see Ignore Spaces 23).
FLAG will then extract all of the punctuation characters from the
field(s) as they are to be checked. FLAG will try to extract a
valid, no punctuation, string that is equal to the number of
checks specified. The extraction will continue until either the
correct number of characters are found, or the end of the field
is reached.
If FLAG searched until the end of the field, the remaining
unfilled character places will be replaced with a special charac-
ter. When FLAG reaches this special character during the check
of the field it will terminate that particular check and go on to
the next.
Example:
Field contents FLAG will see
122 W. 5th St. 122 W 5th St
122 W 5th St 122 W 5th St
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
24
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Mark EXACT Duplicates:
Yes : Mark EXACT duplicates for deletion
No : DO NOT mark EXACT duplicates found
This option instructs FLAG to mark all Exact duplicates it finds
for deletion.
Records are marked as they would be in dBASE III+ if you BROWSED
a file and pressed [CTRL-U]. This DOES NOT mean the record is
physically DELETED, it is only marked for deletion in the same
manner that dBASE marks a record for deletion. You would still
have to go into dBASE, USE the file and PACK the file in order to
literally DELETE the marked records. You can also retrieve,
UNMARK, all of the marked records by, again, starting dBASE, USE
the file, and enter the command RECALL ALL from the dot prompt.
(see also: Verify Exact Marking on page 26)
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
25
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Verify Exact Marking:
Verification before marking is only relevant if you are going to
have FLAG Mark Exact duplicates. When both options have been
selected you will be presented with the actual data of the two
records being compared and will be given a choice of deleting
either of the two records or neither.
The field(s) that will be displayed can be selected in two ways.
FLAG will, by default, display the field(s) being checked. But,
if you designate more fields to be printed than you are checking
FLAG will then use those fields. You do not need to be generat-
ing a report in order to select fields to print. The Print Field
switch will be ignored if a report, to printer or file, is not
being generated.
When an exact duplicate is found FLAG will display the two
records on the screen in a box. The interior boxes will be
labeled with the record numbers the data represents. Within the
interior boxes will be displayed the fields, selected to be
checked or selected to be printed, for your perusal. In between
the two interior boxes is a menu. Delete Orig., Delete Dupe. and
Delete None. Delete Orig. applies to the TOP box, and Delete
Dupe applies to the BOTTOM box. Selecting one of these two
options will Mark the designated record.
If there is more data in any given field than can fit in the box
you can scroll, horizontally and vertically, by using the cursor
control, arrow, keys. Pressing [SHIFT-TAB] will move you from
one record box to the other record box. Pressing the [TAB] key
will scroll the menu. To make your selection you can use the
[TAB] key to highlight the appropriate choice and press [ENTER]
or you can press the highlighted hot key of that menu choice.
(see also: Marking Exact Duplicate on page 25)
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
26
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Check Type:
The check type instructs FLAG to use one of two different methods
for checking.
The Full option will use the full configuration to determine if
two records are duplicates <exact, probable, or possible>. The
Quick check will ignore all of the options for check starting
positions, check lengths, ignorance of case, punctuation, and
space. In other words, the Quick check will only identify truly
Exact duplicates based upon the full values of the selected
fields.
The Full check is the most thorough, obviously, because it is the
most detailed. It is also the slowest. The Quick check can cut
time in as much as half as compared to a Full check. The draw-
back of this speed gain is lost in the fact that a Quick check
can find neither Probable or Possible duplicates.
A Quick check will only identify EXACT duplicates, truly EXACT
duplicates based upon the field(s) you have selected. A Full
check, although more thorough, can come up with Exacts that are
not Exact. The reason being that the records are exact to the
Full check, at least the data checked is exact (which may not be
the full contents of the field). The amount of data being
checked, start and length of check, will have a bearing on what a
Full check will return. In a Quick check length is never a
consideration -- the entire field is compared.
Testing of the two types is the best method of determining which
type will provide the best results for your particular situation.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
27
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Duplicate Identification Levels:
Each of the three duplicate types that FLAG identifies, Exact,
Probable, and Possible, all have settings that allow you to
define what each of these levels is.
When FLAG is checking your file it compares two records. The
duplicate levels are based upon the percentage of duplication
between the two records. For example: the default setting for
the Exact level is 100%, so of the characters checked all of them
must match for FLAG to consider these records as Exact dupli-
cates.
Both Probable and Possible have two settings, a High and Low
value. All of the values are percentages, the percentage that
FLAG will use is derived by the total number of matches and total
number of checks done (not the total number of checks to do, but
the total actually done). If this number falls into the range of
one of the duplicate levels it is considered one of those types
of duplicates.
The default settings are 100% for Exact, 99% for Probable High,
90% for Probable Low, 89% for Possible High, and 80% for Possible
Low. You can set these values to anything you would like. Lower
values will increase the number of duplicates found and higher
values will lower the number of reported duplicates. In most
cases the defaults will prove to be adequate.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
28
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
End of Check Warning:
Yes : Sound alarm at check completion
No : No alarm at end of check.
At the end of the check FLAG will optionally sound an alarm to
indicate that it is finished. This setting also controls the
sounding of an alarm when FLAG encounters an Exact duplicate and
Marking Verification is used.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
29
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Report to File:
Yes : Write all duplicates found to a file
No : DO NOT write all duplicates found to a file
You supply the name of the file to create, Report file name, up
with drive and path designation, if needed. There are a few thi-
ngs to consider when choosing this option:
One, you will need to make sure there is enough room on the disk
to create the file. I cannot estimate how large the file will be
ahead of time due to the fact that FLAG may find no duplicates or
it may find many.
Two, this is mostly for the multi-user environment, you will need
to make sure you have CREATE and WRITE rights in the directory
where you would like to create the file.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
30
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Print report to printer
Yes : Duplicates found WILL be sent to the printer
No : Duplicates found WILL NOT be sent to the printer
With this parameter any duplicates that are found, and that level
has been set to print, will be sent to the printer.
FLAG will also include some statistics with each record, (record
numbers; whether it was an Exact, a Probable, or a Possible
duplicate; percentage of duplication. FLAG will also place the
time and date at the top of each page along with the name of the
file being checked, the field(s) checked, and headers for the
column(s). At the bottom will be the maximum number of checks
being done and counts of Exact, Probable, Possible, total dupli-
cates found.
The 'printer' here is LPT1, or the default PARALLEL port on your
computer. If you have a printer hooked up to a serial port you
will need to use the DOS MODE command to redirect LPT1 to COMx
(where x is the number of the serial port you have your printer
hooked up to).
The miscellaneous information on the report will follow this
template:
File name:
Field names:
Date: Time: Page #
===========================================================
DL/H | Record # | Field heading(s)...
===========================================================
Prob 99999999
999% 99999999
DL = Duplication Level:
EXCT = Exact
Prob = Probable
Poss = Possible
H = Hit percentage. This number is the percentage of
hits:checks for the current record comparison.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
31
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Print Statistics to printer:
Yes : Print statistics from end of check to printer
No : DO NOT print statistics from end of check
Print the statistics of the check to the printer. This option
will print the end of check statistics to the same printer as the
report, if the report option was enabled. These statistics in-
clude:
The name of the file checked
The time and date checked
The fields with number of checks done on each field
The total amount of checks
The number of records to check
The number of records checked
A detail of how much of each duplicate level was detected by
FLAG, and how many, if any, records were marked.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
32
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Print with Graphics characters
This option enables FLAG to use the extended ASCII graphics char-
acters in its printouts. Some printers do not support these ex-
tended characters and will print odd replacement characters.
If you see a double lined box below, then your printer supports
the extended ASCII character set and you can turn this option ON
if you wish to. If not, then you should leave this option OFF for
proper printouts.
╔════╗
║ ║
╚════╝
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
33
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Duplicate Identification Report Inclusion
Yes : Include x type of duplicates in reports
No : Exclude x type of duplicate from reports
Allows designation of which types of duplicates will be included
in reports. Highlight the duplicate level and press [ENTER] to
change current setting.
These three switches tell FLAG which of the different duplication
levels to include in reports. For instance you may decide that
you will mark exact duplicates and use the Stop-n-Ask method of
marking. Because you are reviewing each Exact duplicate as it is
encountered it would be redundant to print them too. So, you
could set the printing of exacts off, while optionally setting
the other types to print, and the end result would be a report
consisting of only the Probable and Possible types.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
34
FLAG Db DoubleCheck Options Setup
_________________________________________________________________
Printer Parameters:
Settings for various printer parameters:
Page Width : The physical page width, measured in
columns (10/in.) A standard sheet of
8.5 x 11 has 85 columns.
Page Length : The physical page length, measured in
lines, (6/in.) A standard sheet of 8.5
x 11 has 66 lines.
Left Margin : Offset from physical column position 0
on the left hand side of the page.
Right Margin : Offset from the maximum physical posi-
tion, defined by Page Width.
Top Margin : Offset from top of page, row 0.
Bottom Margin : Offset from bottom of page, defined by
Page Length.
Printer Initialization code string
Printer Reset code string
The printer Initialization and Reset codes are strings of decimal
numbers (representing the ASCII decimal code of the character to
be sent to the printer) separated by a comma. As in: to send
the Escape character followed by an A the code would look like,
27,65. Where 27 is the ASCII code for the escape character and
65 is the ASCII code for a capital A.
Consult your printer reference for the control code sequences,
every printer manual that I have seen will supply the codes in
various forms, a character, the decimal value of the character,
the hexadecimal value, and so on. Enter the entire control
sequence separating each individual code with a comma.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
35
FLAG Db DoubleCheck Version 6 Appendix A
_________________________________________________________________
APPENDIX A -- Hints
Picking Data Files
Any table being checked must be dBASE III+ compatible.
FLAG will not check a data file with less than 10 records in it,
that sized table should not need automated checking.
Be sure the data file is up to date, that any additions have
already been made to it, and so on. There is little use in
running a thorough check of a file, update it, and run the check
again.
Picking fields
Try to pick a combination of fields that will present FLAG with
the fullest possible picture of your data, without being exclu-
sively unique or redundant.
Any 'generated' primary key, by primary key I mean what you
uniquely identify each record with (i.e. an id number, part
number, series of letters, etc.), is not a good idea, but if the
primary key is manually entered, or is composed of the raw data
being entered then it is a prime candidate for FLAG to check.
Remember not to go overboard on uniqueness either. If what you
decide to check is overly unique FLAG will find few, if any,
duplicates.
The goal is to select the right amount of fields, and data in the
fields, to present FLAG as complete a picture of what your ta-
ble's theme, entity, without over burdening FLAG with too many
checks to process.
For instance:
If your table is based upon the entity Customer, then the
name and street address are pretty good choices to check.
Why? Well, the last name is definitely NOT unique in most
cases. While the combination of first+last names is slightly
more unique it still provides too wide a margin for error.
But, with the addition of the street address, the key com-
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
36
FLAG Db DoubleCheck Version 6 Appendix A
_________________________________________________________________
posed of first name, last name, and street you get a pretty
fair representation of what the whole table is about.
What is needed is a good combination of fields that will give
FLAG a good representation of the data in the table through a
carefully selected sample. The fields chosen should be as unique
as possible. Meaning, fields like zip codes, states, and some-
times city will not be unique enough to generate an accurate
duplication estimate. Fields like names, streets, phone numbers,
etc. will produce the best results. These fields will provide
FLAG with a key that gives a very good representation of the
information contained within the record and yet the key is not so
unique as to not generate any duplicates.
Number of checks to do
This is really pretty much based upon the amount of repetition in
each of the fields you choose to check. With fields such as
names or streets you would want to make the number of checks
large enough to get past the part of the field that is likely to
be similar in a large percentage of records.
With version 6 you can now start checking deeper within the
fields so the check length can remain smaller. With a field like
street address. For example, there are likely to be many records
with the first portion of the address, the digits, that will be
exact or very similar. So, to circumvent this, you would want to
designate a large enough check start value to get past the first
part of the address, the number, and get into the street name. A
portion of the street number combined with a portion of the
street name would give an optimal check of a field such as ad-
dress.
But in fields like city the first three or four characters will
generally be sufficiently unique. (This, of course, will depend
upon the range or your address list. If all of your addresses
are in one state then the cities in that state have a high like-
lihood of being redundant and would therefore not be a good
choice to include in the check.)
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
37
FLAG Db DoubleCheck Version 6 Appendix B
_________________________________________________________________
APPENDIX B -- History
Revision History by Version
Version 6
R.30
- Revision 3 is a major rewrite of FLAG.
- Redesigned menu and interface.
- Increased check speed for Full check type.
- Eliminated Partial check type.
- On-line, context sensitive, help system.
- Statistics box on screen all of the time with name of
currently selected file and system related information
(current drive/directory, free disk space, and current
time and date).
- Printer initialization and reset code options.
- Page dimensions options.
- Color configuration support, users can now set their
own colors. (Somewhat limited, will improve.)
- Many other changes too numerous to mention here.
R.1.14.8
- Changes to the Field Selection Section. [SPACE BAR]
now selects/deselects field rather than [CTRL-ENTER].
- [ENTER] will select a deselected field but will not
deselect a selected field.
- Fixed V and P from the end of check menu. I put them
out of commission when I added the Alarm ON/OFF command
line switch.
R.1.14.7
- Fixed a memory problem with larger tables (160K+ recs)
when indexing.
- Moved end of check bell/alarm to a command line switch
with the default being OFF.
R.1.14.6
- Stop-n-Ask will display the field name to the left of
the field data.
- Fixed problem with selection of Delete Orig from Stop-
n-Ask.
- Fixed out of memory error problem that only evidenced
itself when TPA was around or less than 425K and check-
ing a file on a different drive.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
38
FLAG Db DoubleCheck Version 6 Appendix B
_________________________________________________________________
- Added control of FLAG's internal overlay manager for
performance and memory usage tuning.
R.1.14.0
- Different types of checks. Full/Partial/Quick.
- Stop-n-Ask type marking. When an exact duplicate is
found FLAG will stop and display the information in
those records and inquire whether or not to mark it.
R.1.10.0
- Changed file selection options. Added navigation to
file pick window. Will now navigate across directories
and drives while picking files.
- Changed field selection section. Combined Number of
checks and Field selection into one display. Added
selection of fields to include in reports same display.
- Eliminated display of statistics option. Statistics
are always displayed now. Condensed statistics dis-
played.
- Timer and percent complete added to indexing.
- Percent complete changed to numerical representation
rather than bar in check section.
- Timers include hundredths of seconds. (Mostly because
during some testing I wasn't registering times.)
- Status of F6FLT, if implemented, is displayed during
check. (Looking/Checking)
R.1.9.2
- Implemented ignore punctuation option. I was saving
this for the new release but figured what the heck.
- Worked on the checking a little more and have fixed
something that some of you may have run into. A prob-
lem where you knew there were mixed case characters and
they were not showing up in the check even with ignore
case on. Well, that won't happen anymore.
- Finally implemented the environment variable support
that I intended to do awhile back. The new environment
variable "F6FLT" supports record filtering expressions.
R.1.8.1
- Revs 1.x.x - 1.8.1 were minor changes that I have made
along the line. None of which are worth mentioning.
Most have to do with the an upcoming new release of
FLAG and new versions of the compilers I use in FLAG's
development.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
39
FLAG Db DoubleCheck Version 6 Appendix B
_________________________________________________________________
- Minor fixes to certain internals in the checking sec-
tion, re-engineered the string handling for ignoring
spaces and case.
- FLAG was not saving configurations correctly.
- Amount of area printed on each page has been condensed
so that printers set up to print 60 lpp will not print
a blank page for every full one.
- FLAG now knows exactly (within reason, standard errors)
what is wrong with your printer. (i.e. offline, not
selected, out of paper, not on, etc.)
R.1.0.1
- Corrected FLAG's inability to accept and use the drive
correction if the data files were not in the current
directory.
- Added ability to print or pause to view the statistics
shown on the screen at the end of a check.
- Fixed problem while marking duplicates found, when the
mark duplicate option was toggled ON.
- Rewrote ignore space and check routines in C, this
makes these two specific routines much faster.
R.1.0.0
- Added configuration and history files.
- Will now ignore ALL spaces not just matching ones.
- Fields for report can now be picked.
- Redesigned menus.
- Enabled [ESC] to abort from all menus and data entry
prompts.
- Added command line arguments.
- Settings for duplication levels added.
- Report toggles for duplication levels.
- Broke report into two separate pieces so a check can be
run and ONLY statistics get printed (good for writing a
report to a file and just printing statistics at the
end).
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
40
FLAG Db DoubleCheck Version 6 Appendix B
_________________________________________________________________
Version 5
R.0.3.0
- Condensed/Optimize checking procedure
- FLAG no longer has problems with ExPanded memory
- Opening screen delays eliminated
R.0.2.8
- Fixed internal problem with network compatibility.
- FLAG was not recognizing that it had USEd a table, it
now does what it should.
- Added graphic/non-graphic character printing option.
R.0.2.0
- Added watch for index key and expression lengths.
- Fixed problem with numeric field conversions in the
index expression during indexing and checking.
- Added abort back to main menu from the field selection
and number of checks section with left and right cursor
movement keys.
- Added recognition of a 'table in use by another user'
for networks.
R.0.1.3
- Statistics added to the end of text file.
- Allowed ESCape to abort back to main menu from certain
menus.
R.0.1.0
- Fixed a problem that occurred when there were less than
three fields selected for checking.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
41
FLAG Db DoubleCheck Appendix C
_________________________________________________________________
APPENDIX C
Technical Support / Author
Any and all comments are welcome. I can be reached in any of the
following ways:
US Mail:
Matthew G. Maier
19019 Capehart Drive
Gaithersburg, MD 20879
Telephone: (301)869-1879
Hours - Weekday: 8:00 am EST/EDT - 9:00 pm EST/EDT
(Leave a message with a phone number
where you can be reached after 9:00 pm
EST/EDT or during the day.)
Hours - Weekend: 11:00 am EST/EDT - 10:30 pm EST/EDT
(Generally, I am in and out all weekend
long, so leave a message if I am not in
at the time.)
Email
If at all possible please use Email, it is considerably
easier to communicate via Electronic Mail. It is both
faster, and more easily controlled. Thank you for your
cooperation.
CompuServe: 76370,743
75140,1627
GEnie: M.MAIER1
M.MAIER
In the DBMS RoundTable (page 485)
If one of the above IDs does not generate a response please
try one of the others. I try to check my mail in all of the
accounts each day but you know how things can get at times
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
42
FLAG Db DoubleCheck Association for Shareware Professionals
_________________________________________________________________
APPENDIX E -- ASP - Ombudsman
The Association of Shareware Professionals (ASP) -- Ombudsman
This program is produced by a member of the Association of Share-
ware Professionals (ASP). ASP wants to make sure that the share-
ware principle works for you. If you are unable to resolve a
shareware-related problem with an ASP member by contacting the
member directly, ASP may be able to help. The ASP Ombudsman can
help you resolve a dispute or problem with an ASP member, but
does not provide technical support for members' products. Please
write to the ASP Ombudsman at P.O. Box 5786, Bellevue, WA 98006
or send a CompuServe message via easyplex to ASP Ombudsman
70007,3536.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
43
FLAG Db DoubleCheck Registration
_________________________________________________________________
APPENDIX F -- Registration Information
Name: _______________________________________________________
Address: _______________________________________________________
_______________________________________________________
City: _______________________________________________________
St/Prov: ______________________________ Zip: ______________
Country if not United States: __________________________________
Phone: ______________________________ Date: ______________
Email: CompuServe____________________ GEnie________________
============================================================
Qty. Product description Price Total
____________________________________________________________
| FLAG Db DoubleCheck V6.3 | $29.95 |
____________________________________________________________
Shipping and Handling| $
MD state residents add 5% state tax|
____________________________________________________________
Total enclosed|
============================================================
ALL order(s) must be accompanied by payment; no purchase order(s)
accepted; all monies in U.S. funds; check(s) drawn on U.S. banks,
or USPS certified money order(s).
Please make payment(s) payable to: Matthew G. Maier
Remit registration(s), accompanied with payment(s), to:
Matthew G. Maier
19019 Capehart Drive
Gaithersburg MD 20879
Comments:
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
44
FLAG Db DoubleCheck Pricing/Discount Schedule
_______________________________________________________________
Pricing, Site License, and discount rate chart (per registration)
1 - 10 . . . . . . . . . . . . . $ 29.95 ea.
11 - 20 . . . . . . . . . . . . . . . . 5%
21 - 35 . . . . . . . . . . . . . . . .15%
36 - 100 . . . . . . . . . . . . . . . .30%
101 - 500+ . . . . . . . . . . . . . . . .50%
Site License . . . . . . . . . . . . $ 1250.00
Shipping and Handling: $ 2.50 continental US - $10 Foreign.
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
45
FLAG Db DoubleCheck Thank you!
_________________________________________________________________
Thank You!
for trying
FLAG Db DoubleCheck
-----------------------------------------------------------------
Manual Rev: 91.01.29 FLAG Db DoubleCheck
46